package com.ktgj.customer.mapper;

import java.util.List;

import com.ktgj.customer.domain.OrderInfo;
import com.ktgj.customer.domain.OrderInfoDto;
import com.ktgj.customer.domain.TravelGroupNumberDto;
import org.springframework.stereotype.Repository;

/**
 * 旅游订单Mapper接口
 * 
 * @author ruoyi
 * @date 2021-10-26
 */
@Repository
public interface OrderInfoMapper
{
    /**
     * 查询旅游订单
     * 
     * @param orderId 旅游订单ID
     * @return 旅游订单
     */
    public OrderInfoDto selectOrderInfoById(Long orderId);
    public OrderInfoDto selectOrderInfoByOrderNum(Long orderNum);

    /**
     * 查询旅游订单列表
     * 
     * @param orderInfoDto 旅游订单
     * @return 旅游订单集合
     */
    public List<OrderInfoDto> selectOrderInfoList(OrderInfoDto orderInfoDto);

    /**
     * 新增旅游订单
     * 
     * @param orderInfoDto 旅游订单
     * @return 结果
     */
    public int insertOrderInfo(OrderInfoDto orderInfoDto);

    /**
     * 修改旅游订单
     * 
     * @param orderInfoDto 旅游订单
     * @return 结果
     */
    public int updateOrderInfo(OrderInfoDto orderInfoDto);

    /**
     * 删除旅游订单
     * 
     * @param orderId 旅游订单ID
     * @return 结果
     */
    public int deleteOrderInfoById(Long orderId);

    /**
     * 批量删除旅游订单
     * 
     * @param orderIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteOrderInfoByIds(Long[] orderIds);

    List<OrderInfoDto> selectStatus();

    /**
     * 查询订单数量
     * */
    public List<OrderInfoDto> selectOrderInfoDtoList(List<Long> idList);

    /**
     * 获取指定团号的订单
     * */
    public List<OrderInfoDto> selectOrderInfoDtoByNumberId(Long numberId);
}
